home *** CD-ROM | disk | FTP | other *** search
/ Chip 2005 May / chip-cd_2005_05.zip / 05 / Internet / Amaya 9.1 / Amaya 9.1 Win / amaya-WinXP-9.1.exe / amaya / MathML.trans.fr < prev    next >
Text File  |  2005-02-07  |  6KB  |  353 lines

  1. ! file MathML.trans : structure transformation for MathML
  2. ! see HTML.trans for a description of Trans language
  3. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  4.  
  5. ! WARNING : transformations do NOT work with Multiscript elements
  6. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  7.  
  8. !!! Parenthesis Transformations
  9.  
  10. !surround an element with parentheses
  11. mettre entre parenthΦses:*;
  12.         {
  13.         * > mrow:mo."(";
  14.         * > mrow:*;
  15.         * > mrow:mo.")";
  16.         }
  17.  
  18. !surround a sequence of elements with parentheses
  19. !group: first:*,?*+, last:* ;
  20. !        {
  21. !        first > mrow:mo."(";
  22. !        first > mrow:*;
  23. !        * > mrow:*;
  24. !        last > mrow:*;
  25. !        last > mrow:mo.")";
  26. !        }
  27.  
  28. !remove parenthesis
  29. retirer les parenthΦses: mrow{mf,?*+,mf};
  30.     {
  31.     mf /;
  32.     * > :*;
  33.     }
  34.  
  35. !!! mrow transformations
  36.  
  37. !surround an element with a mrow
  38. englober dans un row: *;
  39.         {
  40.         * > mrow:*;
  41.         }
  42.  
  43. !surround a sequence of elements with a mrow
  44. englober dans un row: *,*+;
  45.         {
  46.         * > mrow:*;
  47.         }
  48.  
  49. ! remove a mrow level
  50. retirer le row: mrow{*+};
  51.         {
  52.         * > :*;
  53.         }
  54.  
  55. !!! mstyle transformations
  56.  
  57. !surround an element with a mstyle
  58. englober dans un mstyle: *;
  59.         {
  60.         * > mstyle:*;
  61.         }
  62.  
  63. !surround a sequence of elements with a mstyle
  64. englober dans un mstyle: *,*+;
  65.         {
  66.         * > mstyle:*;
  67.         }
  68.  
  69. ! remove a mstyle level
  70. retirer le mstyle: mstyle{*+};
  71.         {
  72.         * > :*;
  73.         }
  74.  
  75. !!! Root Transformations
  76.  
  77. !surround an element with a root
  78. englober dans une racine : *;
  79.     {
  80.     * > mroot:*;
  81.     * > mroot:none % ;
  82.     }
  83.  
  84. !surround a sequence of elements with a root
  85. englober dans une racine: *+,last:*;
  86.         {
  87.         * > mroot.mrow:*;
  88.     last > mroot.mrow:*;
  89.     last > mroot:none % ;
  90.         }
  91.  
  92. !remove a root
  93. retirer la racine: mroot{base:*,? index:*};
  94.         {
  95.         base > :*;
  96.     index / ;
  97.         }
  98.  
  99.  
  100. !!! Square Root Transformations
  101.  
  102. !surround an element with a square root
  103. englober dans une racine carrΘe: *;
  104.         {
  105.         * > msqrt:*;
  106.         }
  107.  
  108.  
  109. !surround a sequence of elements with a square root
  110. englober dans une racine carrΘet: *,*+;
  111.         {
  112.         * > msqrt.mrow:*;
  113.         }
  114.  
  115. !remove a square root
  116. retirer la racine carrΘe: msqrt{*};
  117.         {
  118.         * > :*;
  119.         }
  120.  
  121. !transform a square root into a root
  122. racine avec index: msqrt{*};
  123.     {
  124.     * > mroot:*;
  125.     * > mroot:none %;
  126.     }
  127.  
  128. !transform a square root into a menclose
  129. menclose: msqrt{*};
  130.     {
  131.     * > menclose:*;
  132.     }
  133.  
  134. !!! menclose Transformations
  135.  
  136. !surround an element with a menclose
  137. englober dans un menclose: *;
  138.         {
  139.         * > menclose:*;
  140.         }
  141.  
  142.  
  143. !surround a sequence of elements with a menclose
  144. englober dans menclose: *,*+;
  145.         {
  146.         * > menclose:*;
  147.         }
  148.  
  149. !remove a menclose
  150. retirer le menclose: menclose{*};
  151.         {
  152.         * > :*;
  153.         }
  154.  
  155. !transform a menclose into a square root
  156. racine carrΘe: menclose{*};
  157.     {
  158.     * > msqrt:*;
  159.     }
  160.  
  161. !!! Fraction transformations
  162.  
  163. !transform 2 elements into a fraction
  164. fraction: (num:*,den:*) | mrow{num:*,den:*};
  165.         {
  166.         num > mfrac:*;
  167.         den > mfrac:*;
  168.         }
  169.  
  170. !transform an  element into a numerator
  171. numΘrateur: *;
  172.         {
  173.         * > mfrac:*;
  174.         * > mfrac:none %;
  175.         }
  176.  
  177. !transform an sequence of elements into a numerator
  178. numΘrateur: ?*+,last:*;
  179.         {
  180.         * > mfrac.mrow:*;
  181.     last > mfrac.mrow:*;
  182.         last > mfrac:none %;
  183.         }
  184.  
  185. !transform an element into a denominator
  186. dΘnominateur: *;
  187.         {
  188.         * > mfrac:none %;
  189.         * > mfrac:*;
  190.         }
  191.  
  192. !transform an sequence of elements into a denominator
  193. dΘnominateur: first:*,?*+;
  194.         {
  195.         first > mfrac:none %;
  196.     first > mfrac.mrow:*;
  197.         * > mfrac.mrow:*;
  198.         }
  199.  
  200. !remove a fraction
  201. retirer la fraction: mfrac{?(num:*),?(den:*)};
  202.         {
  203.         num > :*;
  204.         den > :*;
  205.         }
  206.  
  207.  
  208. !!! Sub and Sup Transformations
  209.  
  210. !surroud an element with a subsup
  211. ajouer subscript et superscript:*;
  212.     {
  213.     * > msubsup:*;
  214.     * > msubsup:none%;
  215.     * > msubsup:none;
  216.     }
  217.  
  218. !removes a subsup
  219. retirer le subsup: msubsup{base:*,?sub:*,?sup:*};
  220.     {
  221.     base > :*;
  222.     sub /;
  223.     sup /;
  224.     }
  225.  
  226. !removes a superscript
  227. retirer le superscript: msubsup{base:*,?sub:*,?sup:*};
  228.     {
  229.     msubsup > msub;
  230.     sup /;
  231.     }
  232.  
  233. !removes a subscript
  234. retirer le subscript: msubsup{base:*,?sub:*,?sup:*};
  235.     {
  236.     msubsup > msup;
  237.     sub /;
  238.     }
  239.  
  240. !surroud element with a sub
  241. ajouter le subscript:*;
  242.     {
  243.     * > msub:*;
  244.     * > msub:none %;
  245.     }
  246.  
  247. !removes a subscript
  248. retirer le subscript: msub{base:*,?sub:*};
  249.     {
  250.     base > :*;
  251.     sub /;
  252.     }
  253.  
  254. !surroud an element with a sup
  255. ajouter le superscript:*;
  256.     {
  257.     * > msup:*;
  258.     * > msup:none %;
  259.     }
  260.  
  261. !removes a superscript
  262. retirer le superscript: msup{base:*,?sup:*};
  263.     {
  264.     base > :*;
  265.     sup /;
  266.     }
  267.  
  268. !change msub into msup
  269. superscript:msub;
  270.     {
  271.     msub > msup;
  272.     }
  273.  
  274. !change msup into msub
  275. subscript:msup;
  276.     {
  277.     msup > msub;
  278.     }
  279.  
  280. !change msub or msup into msubsup
  281. subsup:msub{base:*,sub:*} | msup{base:*,sup:*};
  282.     {
  283.     base > msubsup:*;
  284.     sup > msubsup:none %;
  285.     sup > msubsup:*;
  286.     sub > msubsup:*;
  287.     sub > msubsup:none;
  288.     }
  289.  
  290. !change msubsup into munderover
  291. change into munderover: msubsup{base:*,sub:*,sup:*};
  292.   {
  293.   base > munderover:*;
  294.   sub > munderover:*;
  295.   sup > munderover:*;
  296.   }
  297.  
  298. !!! Under and Over transformations
  299.  
  300. !surroud an element with a underover
  301. add under and over:*;
  302.     {
  303.     * > munderover:*;
  304.     * > munderover:none %;
  305.     * > munderover:none;
  306.     }
  307.  
  308. ! remove an underover
  309. retirer le under and over:munderover{base:*,?under:*,?over:*};
  310.     {
  311.     base > :*;
  312.     under /;
  313.     over /;
  314.     }
  315.  
  316. !surroud an element with a over
  317. add over:*;
  318.     {
  319.     * > mover:*;
  320.     * > mover:none %;
  321.     }
  322.  
  323. ! remove an over
  324. retirer le under and over:mover{base:*,?over:*};
  325.     {
  326.     base > :*;
  327.     over /;
  328.     }
  329.  
  330. !surroud an element with a under
  331. ajouter un under:*;
  332.     {
  333.     * > munder:*;
  334.     * > munder:none;
  335.     }
  336.  
  337. ! remove an under
  338. retirer le under:munder{base:*,?under:*};
  339.     {
  340.     base > :*;
  341.     under /;
  342.     }
  343.  
  344. !change munderover into msubsup
  345. changer en msubsup: munderover{base:*,under:*,over:*};
  346.   {
  347.   base > msubsup:*;
  348.   under > msubsup:*;
  349.   over > msubsup:*;
  350.   }
  351.  
  352.  
  353.